package com.bobi.tfca.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.bobi.tfca.model.entity.MemberEntity;
import com.bobi.tfca.model.vo.MemberProfileVO;
import com.bobi.tfca.model.vo.MemberVO;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * 会员服务层
 * @author 李文发
 * @date 2024/4/3
 */
public interface MemberService extends IService<MemberEntity> {

    MemberVO getMemberById(Integer memberId);

    Boolean removeAssMember(Integer memberId);

    List<MemberVO> findAllStillMembers();

    List<MemberVO> findAllLeaveMembers();

    Boolean changePwByPw(MemberEntity member, String oldPassword, String newPassword);

    Integer resetPassword(String account, String newPassword, String code);

    List<MemberVO> searchLeaveMemberByName(String searchContent);

    List<MemberVO> searchStillMemberByName(String searchContent);

    Boolean changeMemberRole(Integer memberId, String role);

    MemberProfileVO getProfileByMemberId(Integer memberId);

    MemberVO getRoleAndMemberAge(MemberEntity member);

    List<String> getMemberMenus(MemberEntity member);

    Boolean logout(MemberEntity member);

    String updateMyHeadPhoto(MemberEntity member, MultipartFile file);

    String getMemberByAccount(String account);
}
